package com.wtone.platform.gat.images.gat.model;

import cn.hutool.json.XML;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.wtone.platform.gat.images.gat.core.R;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

/**
 * @Author: aiLin
 * @Date: 2020/9/26 17:30
 * @desc:  非标注车辆对象 MotorVehicle 特征属性
 */
@Data
@ToString
@NoArgsConstructor                 //无参构造
@AllArgsConstructor                //有参构造
@ApiModel(value="MotorVehicle对象",description="非标注车辆对象")
public class MotorVehicle {


    @ApiModelProperty(value="车辆全局唯一标识",example = "31000051511201251219")
    @JsonProperty("MotorVehicleID")
    private String MotorVehicleID;

    @ApiModelProperty(value="信息分类 ,人工采集还是自动采集",example = "1")
    @JsonProperty("InfoKind")
    private int InfoKind;

    @ApiModelProperty(value="来源图像标识",example = "31000051511191251218992018102510500022212")
    @JsonProperty("SourceID")
    private String  SourceID;


    @ApiModelProperty(value="关联卡口编号，卡口编码")
    @JsonProperty("TollgateID")
    private String TollgateID;

    @ApiModelProperty(value="过车时间",example = "20190409172622")
    @JsonProperty("PassTime")
    private String  PassTime;

    @ApiModelProperty(value="设备编码",example = "31000051511201251219")
    @JsonProperty("DeviceID")
    private String  DeviceID;

    @ApiModelProperty(value="近景照片",example = "https://10.129.35.11:88/png")
    @JsonProperty("StorageUrl1")
    private String  StorageUrl1;

    @ApiModelProperty(value="车牌照片",example = "https://10.129.35.11:88/png")
    @JsonProperty("StorageUrl2")
    private String  StorageUrl2;

    @ApiModelProperty(value="远景照片 ",example = "https://10.129.35.11:88/png")
    @JsonProperty("StorageUrl3")
    private String  StorageUrl3;


    @ApiModelProperty(value=" 合成图  ",example = "https://10.129.35.11:88/png")
    @JsonProperty("StorageUrl4")
    private String StorageUrl4;

    @ApiModelProperty(value="缩略图",example = "https://10.129.35.11:88/png")
    @JsonProperty("StorageUrl5")
    private String StorageUrl5;

    @ApiModelProperty(value="左上角 X 坐标 的位置，记录左上角坐标及右下角坐标",example = "1696")
    @JsonProperty("LeftTopX")
    private int LeftTopX;

    @ApiModelProperty(value="左上角 Y 坐标 的位置，记录左上角坐标及右下角坐标",example = "1696")
    @JsonProperty("LeftTopY")
    private int  LeftTopY;

    @ApiModelProperty(value="右下角 X 坐标 的位置，记录左上角坐标及右下角坐标",example = "1696")
    @JsonProperty("RightBtmX")
    private int RightBtmX;

    @ApiModelProperty(value="右下角 Y 坐标，记录左上角坐标及右下角坐标",example = "1696")
    @JsonProperty("RightBtmY")
    private int  RightBtmY;

    @ApiModelProperty(value="车道号车辆行驶方向最左车道为 1，由左向右顺序编号",example = "5")
    @JsonProperty("LaneNo")
    private int LaneNo;

    @ApiModelProperty(value="有无车牌",example = "1")
    @JsonProperty("HasPlate")
    private String  HasPlate;

    @ApiModelProperty(value="号牌种类",example = "01")
    @JsonProperty("PlateClass")
    private String  PlateClass;

    @ApiModelProperty(value="车牌颜色,指号牌底色，取 ColorType 中部分值： 黑色，白色，黄色，蓝色，绿色",example = "1")
    @JsonProperty("PlateColor")
    private String  PlateColor;

    @ApiModelProperty(value="车牌号 各类机动车号牌编号车牌全部无法识别的以“无车牌”标识，部分未识别的每个字符以半角‘-’代替",example = "川DFG321")
    @JsonProperty("PlateNo")
    private String PlateNo;

    @ApiModelProperty(value="挂车牌号 ,各类机动车挂车号牌编号",example = "aEHubsIgqwbyTmJ")
    @JsonProperty("PlateNoAttach")
    private String PlateNoAttach;

    @ApiModelProperty(value="车牌描述, 车牌框广告信息，包括车行名称，联系电话等",example = "KO6rBbFHsrRNowo0w8VQ")
    @JsonProperty("PlateDescribe")
    private String PlateDescribe;

    @ApiModelProperty(value="是否套牌",example = "0")
    @JsonProperty("IsDecked")
    private String  IsDecked;

    @ApiModelProperty(value="是否涂改",example = "0")
    @JsonProperty("IsAltered")
    private String IsAltered;


    @ApiModelProperty(value="是否遮挡",example = "0")
    @JsonProperty("IsCovered")
    private String IsCovered;

    @ApiModelProperty(value="行驶速度,单位千米每小时（km/h）",example = "110")
    @JsonProperty("Speed")
    private int   Speed;


    @ApiModelProperty(value="行驶方向",example = "3")
    @JsonProperty("Direction")
    private String  Direction;

    @ApiModelProperty(value="行驶状态代码",example = "iu1s")
    @JsonProperty("DrivingStatusCode")
    private String DrivingStatusCode;

    @ApiModelProperty(value="车辆使用性质代码",example = "9")
    @JsonProperty("UsingPropertiesCode")
    private int UsingPropertiesCode;

    @ApiModelProperty(value="车辆类型",example = "K")
    @JsonProperty("VehicleClass")
    private String  VehicleClass;

    @ApiModelProperty(value="车辆品牌,被标注车辆的品牌",example = "136")
    @JsonProperty("VehicleBrand")
    private String VehicleBrand;

    @ApiModelProperty(value="车辆型号",example = "7a0tPo67moEQ4MMq")
    @JsonProperty("VehicleModel")
    private String   VehicleModel;

    @ApiModelProperty(value="车辆年款",example = "9dj3PCtfJWz2k5iS")
    @JsonProperty("VehicleStyles")
    private String  VehicleStyles;

    @ApiModelProperty(value="车辆长度",example = "17111")
    @JsonProperty("VehicleLength")
    private int VehicleLength;

    @ApiModelProperty(value="车辆宽度",example = "1902")
    @JsonProperty("VehicleWidth")
    private int  VehicleWidth;

    @ApiModelProperty(value="车辆高度",example = "2127")
    @JsonProperty("VehicleHeight")
    private int  VehicleHeight;

    @ApiModelProperty(value="车身颜色",example = "1")
    @JsonProperty("VehicleColor")
    private String VehicleColor;

    @ApiModelProperty(value="颜色深浅",example = "0")
    @JsonProperty("VehicleColorDept")
    private String VehicleColorDept;

    @ApiModelProperty(value="车前盖,对车前盖的描述",example = "ZJt06Flr5oRdcQHSKfijTvao37hHXH8VBcrjCvRge8Jl6qkkhI6cUxbuLnz9ntRu")
    @JsonProperty("VehicleHood")
    private String   VehicleHood;

    @ApiModelProperty(value="车后盖,对车后盖的描述",example = "4hoihOC5aB2QchEiIMwRwIlqk4NYUi9uofSaNpVGbWAVo6dPfovrbsL98MJoLTiy")
    @JsonProperty("VehicleTrunk")
    private String  VehicleTrunk;

    @ApiModelProperty(value="车轮,对车轮的描述",example = "tjfKGiw73xl08ZDNeYULvyctA87tlDernW6ECU085tqqdGuc2GM0qzdvJhnDEnkk")
    @JsonProperty("VehicleWheel")
    private String  VehicleWheel;

    @ApiModelProperty(value="车轮印花纹,对车轮花纹的描述",example = "86")
    @JsonProperty("WheelPrintedPatte")
    private String WheelPrintedPatte;


    @ApiModelProperty(value="车窗,对车窗的描述",example = "PZAiLfbj7UMRcFvThsWkpRsOXV5qVVPKpAMDIVB7ccrNjVyZb0uYpeFOBg7qIu7f")
    @JsonProperty("VehicleWindow")
    private String  VehicleWindow;

    @ApiModelProperty(value="车顶,对车顶的描述",example = "2eLChu4sjkC7UTNglhaVapL1sJ4Za0zg0INubvXOInJIUi1UfWcdSXip3CFffqSu")
    @JsonProperty("VehicleRoof")
    private String   VehicleRoof;

    @ApiModelProperty(value="车门,对车门的描述",example = "v3wYhpFlGwcyD00fRqQfuOcRreW5iCi3A3iFsuc1OloESSXoAj7LmEFsVFkcDhbB")
    @JsonProperty("VehicleDoor")
    private String   VehicleDoor;

    @ApiModelProperty(value="车侧,对车侧面的描述，不包括门",example = "eomMH3w0Xji381dzkQKM3U33wUrk4RAJ7e5RQkQIoRmsyXzDpzkCwzWY9dFqQHuI")
    @JsonProperty("SideOfVehicle")
    private String   SideOfVehicle;

    @ApiModelProperty(value="车厢,对车厢的描述",example = "tpAdFairgpZFHOJy2n0gz5Hfn5MmTCgnXmeiLmrPFUmaIbu0LidpiAnGNNhfPENN")
    @JsonProperty("CarOfVehicle")
    private String  CarOfVehicle;

    @ApiModelProperty(value="后视镜,对后视镜的描述",example = "fW3megjE6dUsu4UCkyEi8EwXfVip8MrpEUpIWUsskaMc4dF0vzmBVUl1uVVFFx5b")
    @JsonProperty("RearviewMirror")
    private String  RearviewMirror;

    @ApiModelProperty(value="底盘,对车底盘的描述",example = "Vxcm3Cob2mdbJmW69kog8hviPxoKK0Zz9H1APEMoU5jUZyc3VhoOXfjX9Obu6p9B")
    @JsonProperty("VehicleChassis")
    private String  VehicleChassis;

    @ApiModelProperty(value="遮挡,对车遮挡物的描述",example = "itujakqAfu0ZYVzQNnKDjzd2R5R3pr4ahN1xDOxShzyN11PzPwrupBKtgkERUFwL")
    @JsonProperty("VehicleShielding")
    private String  VehicleShielding;


    @ApiModelProperty(value="贴膜颜色",example = "3")
    @JsonProperty("FilmColor")
    private String  FilmColor;

    @ApiModelProperty(value="改装标志",example = "1")
    @JsonProperty("IsModified")
    private String IsModified;

    @ApiModelProperty(value="撞痕信息",example = "0")
    @JsonProperty("HitMarkInfo")
    private String  HitMarkInfo;

    @ApiModelProperty(value="车身描述, 描述车身上的文字信息，或者 车上载物信息",example = "iqVARbu0qrzfrWT4T1ZYDKZn2HTPnhqEwQmbiG2lk0AIXWSiCf344O9OL6qhKPsiTRHRhgGSXwoEtV7aIJL1QS6ciyxLt7w7Q5u7CpIWwlAMnh4TcD3DuMNNyHXyEnIx")
    @JsonProperty("VehicleBodyDesc")
    private String  VehicleBodyDesc;

    @ApiModelProperty(value="车前部物品,当有多个时可用英文半角逗号分隔",example = "2")
    @JsonProperty("VehicleFrontItem")
    private String  VehicleFrontItem;

    @ApiModelProperty(value="车前部物品描述, 对车前部物品数量、颜色、种类等信息的描述",example = "2")
    @JsonProperty("DescOfFrontItem")
    private String   DescOfFrontItem;

    @ApiModelProperty(value="车后部物品,当有多个时可用英文半角逗号分隔",example = "1")
    @JsonProperty("VehicleRearItem")
    private String  VehicleRearItem;

    @ApiModelProperty(value="车后部物品描述,对车后部物品数量、颜色、种类等信息的描述",example = "1")
    @JsonProperty("DescOfRearItem")
    private String   DescOfRearItem;

    @ApiModelProperty(value="车内人数,车辆内人员数量",example = "2")
    @JsonProperty("NumOfPassenger")
    private int  NumOfPassenger;

    @ApiModelProperty(value="经过道路名称,车辆被标注时经过的道路名",example = "T4NI1tMfXtjLW7CyJxqvgAvSiaGjMbSnLWqTWNOjT1EGM3XojQJGVpY6wW7qMpnl")
    @JsonProperty("NameOfPassedRo")
    private String NameOfPassedRo;

    @ApiModelProperty(value="遮阳板状态,0：收起；1：放下",example = "0")
    @JsonProperty("Sunvisor")
    private int  Sunvisor;

    @ApiModelProperty(value="安全带状态,0：未系；1：有系",example = "0")
    @JsonProperty("SafetyBelt")
    private int  SafetyBelt;

    @ApiModelProperty(value="打电话状态,0：未打电话；1：打电话中",example = "0")
    @JsonProperty("Calling")
    private int  Calling;

    @ApiModelProperty(value="整个号牌号码的识别可信度，以 0～100 数值表示百分比，",example = "0")
    @JsonProperty("PlateReliability")
    private int  PlateReliability;

    @ApiModelProperty(value="号牌号码的识别可信度，以0～100 数值表示百分比，数值越大可信度越高。按“字符 1-可信度 1，字符 2-可信度 2”方式排列，中间为英文半角连接线、逗号；例如识别号牌号码为：苏 B12345，则取值为：”苏-80，B-90， 1-90，2-88，3-90，4-67，5-87”",example = "0")
    @JsonProperty("PlateCharReliabilit")
    private int PlateCharReliabilit;

    @ApiModelProperty(value="品牌标志识别可信度,以 0～100 之间数值表示百分比，数值越大可信度越高",example = "052")
    @JsonProperty("BrandReliability")
    private int BrandReliability;

    @ApiModelProperty(value="可以包含0个或者多个子图像 对象")
    @JsonProperty("SubImageList")
    private  SubImageList SubImageInfoList;

    @ApiModelProperty(value="特征值列表")
    @JsonProperty("FeatureList")
    private  FeatureInfoObject  FeatureLis;

    @ApiModelProperty(value="国籍代码,世界各国和地区名称代码",example = "rOg")
    @JsonProperty("NationalityCode")
    private  String NationalityCode;

    @ApiModelProperty(value="归属分类标签 ",example = "kiadBNlicflbuInybf8dyndQFSwsHXdAWCen0zUsO")
    @JsonProperty("TabID")
    private  String TabID;

}
